package dados;

import javax.persistence.EntityManager;

import entidades.Cliente;
import entidades.Funcionario;
import fachada.Fachada;

public class RepositorioFuncionarioBD implements
		RepositorioFuncionarioInterface {

	EntityManager em = Fachada.obterEntityManagerF().createEntityManager();

	public RepositorioFuncionarioBD() {

	}

	public RepositorioFuncionarioBD(Funcionario fun) {
		em.getTransaction().begin();
		em.persist(fun);
		em.getTransaction().commit();
	}

	@Override
	public void inserir(Funcionario fun) {
		em.getTransaction().begin();
		em.persist(fun);
		em.getTransaction().commit();

	}

	@Override
	public void remover(String s) {
		Funcionario f;
		f = em.find(Funcionario.class, s);
		em.getTransaction().begin();
		em.remove(f);
		em.getTransaction().commit();
	}

	@Override
	public Funcionario pesquisar(String s) {
		Funcionario f;
		em.getTransaction().begin();
		f = em.find(Funcionario.class, s);
		em.getTransaction().commit();
		return f;
	}

	@Override
	public void atualizar(String s, String s1) {
		if (existe(s)) {
			Funcionario f;
			em.getTransaction().begin();
			f = em.find(Funcionario.class, s);
			f.setNome(s1);
			em.getTransaction().commit();
		}

	}

	@Override
	public boolean existe(String s) {
		em.getTransaction().begin();
		boolean b = false;
		if (em.find(Cliente.class, s) != null) {
			b = true;
		}
		return b;
	}

}
